package com.module.fitness.utils

import android.os.Parcelable
import com.common.base.utils.AppUtils.getString
import com.module.ble.utils.AizoSDKUtil
import com.module.ble.utils.DeviceFirmType
import com.module.overview.R
import kotlinx.parcelize.Parcelize

/**
 *
 * 作者：sosou
 *
 * 版本：1.0
 *
 * 创建日期：2025/4/7
 *
 * 描述：
 *
 * 修订历史：
 *
 */
@Parcelize
enum class ExerciseType : Parcelable {
    RUNNING, FITNESS, CYCLING,
    RUNNING_IN, RUNNING_OUT, FITNESS_IN, FITNESS_OUT, CYCLING_IN, CYCLING_OUT,
}

fun getEnumToExType(eType:ExerciseType):Int{//内部统一运动联类型转厂家运动类型
    return when(AizoSDKUtil.getRingFirm()){
        DeviceFirmType.YQ_FIRM,DeviceFirmType.HDU_FIRM -> {
            when(eType){
                ExerciseType.RUNNING_IN -> 8
                ExerciseType.RUNNING_OUT -> 10
                ExerciseType.FITNESS_IN -> 7
                ExerciseType.FITNESS_OUT -> 9
                ExerciseType.CYCLING_IN -> 5
                ExerciseType.CYCLING_OUT -> 11
                else -> -1
            }
        }
//        DeviceFirmType.HDU_FIRM -> {
//            -1
//        }
        else -> -1
    }
}

fun getExTypeToEnum(firmExType:Int):ExerciseType{//厂家运动类型转内部统一运动联类型
    return when(AizoSDKUtil.getRingFirm()){
        DeviceFirmType.YQ_FIRM -> {
            when(firmExType){
                8 -> ExerciseType.RUNNING_IN
                10 -> ExerciseType.RUNNING_OUT
                7 -> ExerciseType.FITNESS_IN
                9 -> ExerciseType.FITNESS_OUT
                5 -> ExerciseType.CYCLING_IN
                11 -> ExerciseType.CYCLING_OUT
                else -> ExerciseType.RUNNING
            }
        }
        DeviceFirmType.HDU_FIRM -> {
            ExerciseType.RUNNING
        }
        else -> ExerciseType.RUNNING
    }
}

fun getExTypeToName(firmExType:Int):String{//厂家运动类型转String类名
    return when(firmExType){
        8 -> getString(R.string.common_indoor_running)
        10 -> getString(R.string.common_outdoor_running)
//        7 -> getString(R.string.common_outdoor_running)
        9 -> getString(R.string.common_outdoor_walking)
        5 -> getString(R.string.common_indoor_cycling)
        11 -> getString(R.string.common_outdoor_running)
        else -> getString(R.string.common_indoor_running)
    }
}

fun getExTypeToImageResId(firmExType:Int):Int{//厂家运动类型转String类名
    return when(firmExType){
        8 -> R.drawable.overview_outdoor_running_icon
        10 -> R.drawable.overview_indoor_running_icon
//        7 -> getString(R.string.common_outdoor_running)
        9 -> R.drawable.overview_outdoor_walking_icon
        5 -> R.drawable.overview_indoor_cycling_icon
        11 -> R.drawable.overview_outdoor_cycling_icon
        else -> R.drawable.overview_outdoor_running_icon
    }
}